package cn.ywyu.classfinal.util;

import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;

/**
 * 控制台打印日志工具
 */
public class Log {

    private static boolean DEBUG = false;
    private static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

    /**
     * 输出debug信息
     *
     * @param msg 信息
     */
    public static void debug(Object msg) {
        if (DEBUG) {
            String log = LocalDateTime.now().atZone(ZoneId.systemDefault()).format(DATE_TIME_FORMATTER)
                    + " [DEBUG] "
                    + msg;
            System.out.println(log);
        }
    }

    /**
     * 输出
     *
     * @param obj 内容
     */
    public static void println(String obj) {
        System.out.println(obj);
    }

    /**
     * 输出
     *
     * @param obj 内容
     */
    public static void print(String obj) {
        System.out.print(obj);
    }

    /**
     * 输出
     */
    public static void println() {
        System.out.println();
    }

    /**
     * 启用debug
     */
    public static void enableDebug(boolean enable) {
        DEBUG = enable;
    }
}
